Motor controllers that control motor current phase generally require a rotational angle detector for detecting motor rotational angle to optimize the current phase. A rotational angle detector is generally implemented by a hall IC. However, a resolver, providing higher angular encodability, is a better alternative when required to restrain torque variation occurring in a single motor rotation as much as possible or when controlling the stop position of the motor. The use of resolver requires a converter for obtaining rotational angle from the output signal produced by the resolver. One example of a well known converter is a dedicated resolver/digital converter IC (“AU6802” manufactured by Tamagawa Seiki Co., Ltd., for example).
JP 2005-210839 A discloses a configuration that detects motor rotational angle without using a dedicated IC in order to reduce cost. FIG. 10 accompanying the present disclosure illustrates the configuration described in the above described reference. As can be seen in FIG. 10, a resolver 2 is provided in a motor 1. A controller 3 that controls the drive of motor 1 is configured by a microcomputer 4, a drive circuit 5, an inverter main circuit 6, a current detecting circuit 7, a synchronous excitation signal generator 8, an amplifier 9, and a differential amplifier 10. Current detector 7 detects current flowing in the windings of motor 1. Microcomputer 4 is provided with an A/D converter 12a that performs A/D conversion of current detection signals.
Microcomputer 4 is also provided with a PWM circuit 11 for outputting clock signal S1 synchronized with a carrier wave period for PWM modulation. The clock signal S1 provides basis for generating sinusoidal excitation signal S2 at synchronous excitation signal generating circuit 8. The excitation signal S2 is amplified at the amplifier 9 to be applied to the resolver 2 thereafter.
The resolver 2 outputs cosine signal S3 and sine signal S4 which are then amplified at differential amplifier 10 to be thereafter A/D converted at A/D converter 12b of the microcomputer 4 so as to be synchronized with the carrier wave period. The microcomputer 4 obtains cosine data Dx and sine data Dy from the difference between the latest data and the previous data for the cosine signal S3 and sine signal S4 and thereafter executes function arctan to calculate rotational angle θ of the rotor.
The above described rotational angle detector reduces cost since it eliminates the need for a dedicated resolver/digital conversion IC. Further, since calculation is performed depending on the difference of discretely inputted data, the effect of temperature drift occurring on output signals S3 and 54 of the resolver 2 and temperature drift occurring at differential amplifier 10 and A/D converter 12b are advantageously eliminated.
However, the above described rotational angle detector uses the latest data of the current iteration and the previous data of the preceding iteration that are inputted discretely. Thus, when time differences between the inputs are not small enough, in other words, when the carrier wave period and A/D conversion period are not small enough relative to the rotational period of the motor, meaning that the motor is in high-speed motor rotation, calculation errors occur that prevent acquisition of accurate rotational angle.